package cn.wolfcode.luowowo.search.service;

import cn.wolfcode.luowowo.search.query.SearchQueryObject;
import cn.wolfcode.luowowo.search.template.StrategyTemplate;
import cn.wolfcode.luowowo.search.vo.StatsResult;
import org.springframework.data.domain.Page;

import java.util.List;
import java.util.Map;

/**
 * 攻略查询的服务
 */
public interface IStrategySearchService {

    void save(StrategyTemplate template);

    /**
     * 构建攻略高级查询的条件(国内, 海外, 主题)
     * @param conditionUnabroad
     * @return
     */
    List<StatsResult> createCondition(int conditionUnabroad);

    /**
     * 主题推荐
     * @return
     */
    List<Map<String, Object>> commendTheme();

    /**
     * 攻略首页的高级查询
     * @param qo
     * @return
     */
    Page<StrategyTemplate> searchPage(SearchQueryObject qo);

    /**
     * 查询目的地对应的攻略
     * @param id
     * @return
     */
    List<StrategyTemplate> findByDestId(Long id);
}
